<!DOCTYPE html>
<html>

<head>
    <!-- 页面meta -->
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>规格管理</title>
    <meta content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" name="viewport">
    <link rel="stylesheet" href="/plugins/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="/plugins/adminLTE/css/AdminLTE.css">
    <link rel="stylesheet" href="/plugins/adminLTE/css/skins/_all-skins.min.css">
    <link rel="stylesheet" href="/css/style.css">
    <script src="/plugins/jQuery/jquery-2.2.3.min.js"></script>
    <script src="/plugins/bootstrap/js/bootstrap.min.js"></script>

</head>

<body class="hold-transition skin-red sidebar-mini">
<!-- .box-body -->
<div class="box-header with-border">
    <h3 class="box-title">规格管理</h3>
</div>
<div class="box-body">
    <!-- 数据表格 -->
    <div class="table-box">

        <!--工具栏-->
        <div class="pull-left">
            <div class="form-group form-inline">
                <div class="btn-group">
                    <button type="button" class="btn btn-default" title="新建" data-toggle="modal"
                            data-target="#editModal"><i class="fa fa-file-o"></i> 新建
                    </button>
                    <button type="button" id="deleteCheck" class="btn btn-default" title="删除"><i class="fa fa-trash-o"></i> 删除</button>

                    <button type="button" class="btn btn-default" title="刷新" onclick="window.location.reload();"><i
                            class="fa fa-refresh"></i> 刷新
                    </button>
                </div>
            </div>
        </div>
        <div class="box-tools pull-right">
            <div class="has-feedback">
                规格名称：<input type="text" id="searchName" name="specName">
                <button onclick="searchName()" class="btn btn-default">查询</button>
            </div>
        </div>

        <!--工具栏/-->
        <!--数据列表-->
        <table id="dataList" class="table table-bordered table-striped table-hover dataTable">
            <thead>
            <tr>
                <th class="" style="padding-right:0px">
                    <input id="selall" type="checkbox" class="icheckbox_square-blue">
                </th>
                <th class="sorting_asc">规格ID</th>
                <th class="sorting">规格名称</th>
                <th class="text-center">操作</th>
            </tr>
            </thead>
            <tbody id="specTable"></tbody>
        </table>
        <!--数据列表/-->
    </div>
    <!-- 数据表格 /-->
</div>
<!-- /.box-body -->


<!-- 编辑窗口 -->
<div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h3 id="myModalLabel">规格编辑</h3>
            </div>
            <div class="modal-body">

                <table class="table table-bordered table-striped" width="800px">
                    <tr>
                        <td>规格名称</td>
                        <td><input class="form-control" id="specName" placeholder="规格名称"></td>
                    </tr>
                </table>

                <!-- 规格选项 -->
                <div class="btn-group">
                    <button type="button" onclick="addTr()" class="btn btn-default" title="新建"><i
                            class="fa fa-file-o"></i>
                        新增规格选项
                    </button>

                </div>

                <table class="table table-bordered table-striped table-hover dataTable">
                    <thead>
                    <tr>
                        <th class="sorting">规格选项</th>
                        <th class="sorting">排序</th>
                        <th class="sorting">操作</th>
                    </thead>
                    <tbody id="cpTbody">
                    <tr id="cptr">
                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="delTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    <tr>

                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="delTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    <tr>

                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="delTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    </tbody>
                </table>
            </div>
            <div class="modal-footer">
                <button class="btn btn-success" id="addSpec" data-dismiss="modal" aria-hidden="true">保存</button>
                <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">关闭</button>
            </div>
        </div>
    </div>
</div>
<!-- 修改窗口 -->
<div class="modal fade" id="editModal1" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h3 id="myModalLabel1">规格编辑</h3>
            </div>
            <div class="modal-body">

                <table class="table table-bordered table-striped" width="800px">
                    <tr>
                        <td>
                            <input type="hidden" name="id" id="id">
                        </td>
                    </tr>
                    <tr>
                        <td>规格名称</td>
                        <td><input class="form-control" id="sname" name="specName" placeholder="规格名称"></td>
                    </tr>
                </table>

                <!-- 规格选项 -->
                <div class="btn-group">
                    <button type="button" onclick="updateTr()" class="btn btn-default" title="新建"><i
                            class="fa fa-file-o"></i>
                        新增规格选项
                    </button>

                </div>

                <table class="table table-bordered table-striped table-hover dataTable">
                    <thead>
                    <tr>
                        <th class="sorting">规格选项</th>
                        <th class="sorting">排序</th>
                        <th class="sorting">操作</th>
                    </thead>
                    <tbody id="update">
                    <tr id="cptr1">
                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="updateDelTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    <tr>

                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="updateDelTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    <tr>

                        <td>
                            <input class="form-control" placeholder="规格选项">
                        </td>
                        <td>
                            <input class="form-control" placeholder="排序">
                        </td>
                        <td>
                            <button type="button" onclick="updateDelTr(this)" class="btn btn-default" title="删除"><i
                                    class="fa fa-trash-o"></i> 删除
                            </button>
                        </td>
                    </tr>
                    </tbody>
                </table>
            </div>
            <div class="modal-footer">
                <button class="btn btn-success" onclick="updateSpec()" data-dismiss="modal" aria-hidden="true">保存</button>
                <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">关闭</button>
            </div>
        </div>
    </div>
</div>
<script>
    $(function () {
       getBrand();
    })
    function searchName(){
        var specName = $("#searchName").val();

        getBrand(specName)
    }
    //拼接数据
    function getBrand(specName) {
        $.get("specification/findAll", {specName:specName}, function (data) {
            if (data.code == 10000) {
                var data1 = data.data;
                let tr;
                //遍历data
                for (let i = 0; i < data1.length; i++) {
                    let li = '<tr>\n' +
                        '<td><input type="checkbox" id="id" name="id" value="' + data1[i].id + '"></td>\n' +
                        '<td>' + data1[i].id + '</td>\n' +
                        '<td>' + data1[i].specName + '</td>\n' +
                        '<td class="text-center">\n' +
                        '<button onclick="editRole(' + data1[i].id + ')" type="button" class="btn bg-olive btn-xs" data-toggle="modal" data-target="#editModal1">修改\n' +
                        '</button>\n' +
                        '</td>\n' +
                        '</tr>'
                    tr += li;
                }
                $("#specTable").html(tr);
            } else {
                alert(data.message);
            }
        })
    }

    //添加规格增加一行
    function addTr() {
        var clone = $("#cptr").clone();
        $("#cpTbody").append(clone)
        //将新增的数据清空
        $(clone).find(":input").val('');
    }
    //添加规格删除一行
    function delTr(nowTr) {
        $(nowTr).parent().parent().remove();
    }

    //修改规格增加一行
    function updateTr() {
        var clone = $("#cptr").clone();
        $("#update").append(clone)
        //将新增的数据清空
        $(clone).find(":input").val('');
    }

    //增加数据
    $("#addSpec").click(function () {
        let arr = [];
        var trList = $("#cpTbody").find("tr");
        $(trList).each(function (i,e) {
            var tdList = $(e).find("td");
            var optionName = $(tdList[0]).find("input").val();
            var orders = $(tdList[1]).find("input").val();
            var json = {optionName:optionName,orders:orders};
            arr.push(json)
        })
        var specOptionJson = JSON.stringify(arr);

        $.ajax({
            url: "specification/addSpecAndOption",
            type: "post",
            dataType: "json",
            data:{specName:$("#specName").val(),specOptionJson:specOptionJson},
            async: false,
            success: function (data) {
                alert(data.message);
                window.location.reload();
            },error: function (data) {
                alert(data.message);
            }
        })
    })

    //修改回显
    editRole = function (id){
        $.get("specification/editRole",{id:id},function (data) {
            var spec = data.data.specification;
            var optionList = data.data.optionList;
            if (data.code == 10000) {
                let update = "";
                for (let i = 0; i < optionList.length; i++) {
                    let tr = '<tr>\n' +
                        '<td>\n' +
                        '<input class="form-control" value="'+optionList[i].optionName+'" placeholder="规格选项">\n' +
                        '</td>\n' +
                        '<td>\n' +
                        '<input class="form-control" value="'+optionList[i].orders+'" placeholder="排序">\n' +
                        '</td>\n' +
                        '<td>\n' +
                        '<button type="button" class="btn btn-default" title="删除"><i class="fa fa-trash-o"></i> 删除\n' +
                        '</button>\n' +
                        '</td>\n' +
                        '</tr>'
                    update += tr;
                }
                $("#sname").val(spec.specName)
                $("#id").val(spec.id)
                $("#update").html(update);
            }
        })
    }

    //修改操作
    function updateSpec() {
        let arr = [];
        var trList = $("#update").find("tr");
        $(trList).each(function (i,e) {
            var tdList = $(e).find("td");
            var optionName = $(tdList[0]).find("input").val();
            var orders = $(tdList[1]).find("input").val();
            var json = {optionName:optionName,orders:orders};
            arr.push(json)
        })
        var specOptionJson = JSON.stringify(arr);
        $.ajax({
            url: "specification/updateSpec",
            type: "post",
            dataType: "json",
            data:{specName:$("#sname").val(),id:$("#id").val(),specOptionJson:specOptionJson},
            async: false,
            success: function (data) {

                alert(data.message);
                window.location.reload();
            },error: function (data) {
                alert(data.message);
            }
        })
    }

    //批量删除
    $("#deleteCheck").click(function () {
        //定义一个空数组一会来存放要删除的id
        let ids = [];
        let checkArr = document.getElementsByName("id");
        for(let i=0; i<checkArr.length; i++){
            if(checkArr[i].checked){
                ids.push(checkArr[i].value);
            }
        }
        if (ids.length > 0){
            let flag = confirm("您确定要删除吗?");
            if (flag){
                $.get("specification/deleteSpec","ids="+ids,function (data) {
                    if (data.code == 10000){
                        alert("删除成功");
                        window.location.reload();
                    }else {
                        alert("删除失败");
                    }
                })
            }else {
                alert("删除失败");
            }
        }else {
            alert("请您选择要删除的行");
        }
    })
</script>
</body>

</html>